草庐IT

python - 执行自定义 Django 404 页面的代码

全部标签

ruby-on-rails - 为什么 url_for 为未定义的路由返回/ Assets ?

我正在从Rails3.1.3升级到3.2.2,但出于某种原因,如果路由不存在,现在url_for总是返回/assets。例如:url_for({})#=>"/assets"url_for({action:'fake',controller:'notreal'})#=>/assets?action=fake&controller=notreal但我希望它像往常一样抛出正常的ActionController::RoutingError... 最佳答案 如果您通过指定controller-action构建路由,Rails不会检查路由是否存

ruby-on-rails - 有没有办法在 Rails 中以编程方式查看(或打印)方法定义?

假设我在我的Rails应用中某处定义了一个名为bla的函数。在ruby​​或rails中有没有一种方法可以动态/以编程方式打印用于定义该函数的代码?例如:defblaputs"HiThere"end然后如果我调用一个函数,例如get_definition:putsget_definition(:bla)这会打印出来"puts\"HiThere\""有规范的方法吗?我以前实际上不需要这样做,而且我知道这在Rails中并不是很常见的做法。我也不想使用元(反射)编程定义我的方法,然后存储用于定义我的方法的字符串。感谢您的帮助! 最佳答案

ruby-on-rails - 在 Rails 中,如何在特定的 Rspec 测试之前加载所有代码?

我有一些Rspec测试有时会因错误而失败:自动加载常量时检测到循环依赖。这些测试是多线程的(rufus-scheduler测试),这显然是自动加载代码的已知问题(http://route.github.io/2013/11/13/rails-autoloading.html)。如果我在config/environments/test.rb中设置config.eager_load=true,我可以使测试始终如一地工作。但是,我担心当它变大时,这会真正减慢我的测试套件的其余部分。有什么方法可以仅为我的多线程测试设置这个预加载选项吗?rails4.1.4 最佳答案

ruby - 自动将院子文档框架添加到现有的 Rails 遗留代码中

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭4年前。Improvethisquestion我希望能够将模板化的YARD文档样式注释插入到我现有的Rails遗留应用程序中。目前它的评论很少。我想要具有指定参数的类header和方法header(通过从我假定的方法签名中提取)和返回值的占位符。在PHP代码中,我有一些工具可以检查代码并在适当的位置创建插入到代码中的文档header注释。在带有Ducktyping等的Ruby中,我确信诸如@params等类型之类

ruby-on-rails - 自定义 Rails 的默认 Resourceful Route 路径

长话短说我想更改Rails资源路由的默认行为,移动所有资源的create路径,使其成为/resources/new的POST而不是比/resources。设置让我们假设一个像这样指定的足智多谋的路线:#routes.rbresources:events实际生成的路由是:$rakeroutesPrefixVerbURIPatternController#ActioneventsGET/events(.:format)events#indexPOST/events(.:format)events#createnew_eventGET/events/new(.:format)events#n

ruby - 控制多机 Vagrant block 执行顺序

我有一个多机vagrant设置,其中包含一些我需要更改执行顺序的block。由于vagrant顺序是从外到内,最嵌套的block最后执行。我需要一种方法来使供应block更加嵌套,以便它们最后执行。我尝试添加mach.vm.define但这些block没有执行,我不明白为什么。正常执行,顺序错误Vagrant.require_version">=1.6.0"VAGRANTFILE_API_VERSION="2"require'yaml'machines=YAML.load_file('vagrant.yaml')Vagrant.configure(VAGRANTFILE_API_VER

ruby-on-rails - 在多个页面上使用相同表单的 Rails 最佳实践

我正在开发一个Rails2.3.1网站。在整个网站中,我需要一个用于在各种页面(主页、创建帖子页面、帖子列表页面、评论列表页面等)上创建帖子的表单——只要说这个表单需要在由各种Controller)。这些页面中的每一个都显示在相应的Controller/操作中检索到的各种其他信息。例如,主页列出了最新的10篇文章、从数据库中提取的内容等。因此,我已将帖子创建表单移动到它自己的部分中,并将该部分包含在所有必要的页面中。请注意,部分POST中的表单到/questions(路由到PostsController::create——这是默认的Rails行为)。我遇到的问题是当Posts表单没有正

ruby - 如何使用 Ruby 和私钥执行 SCP?

我这里有一个小问题:我尝试使用SCP和Ruby将文件上传到使用私钥的服务器。代码如下:deftransfer_file(source_file,destination_file)$log.info("ScpDP:Key=#{@key}")Net::SCP.start(@host,@userName,:keys=>@key)do|scp|scp.upload!(source_file,@folder+destination_file,:ssh=>@key)endend但是有一些问题,不是私钥,因为我们日常使用它,我收到以下日志错误:I,[2010-08-24T11:21:27.24784

ruby - 使用 YARD 时忽略注释掉的代码

我有一些如下所示的Ruby代码:#some_string="{really?}"大括号需要是字符串的一部分。这一行是注释掉的代码,我想保留在那里。我还使用YARD来记录代码,所以当我运行yarddoc时,它(自然地)会发出无法“真正”链接的警告。有没有办法让YARD忽略注释掉的代码? 最佳答案 IsthereawayIcantellYARDtoignorecommentedoutcode?一方面,YARD记录支持Rdoc标记。并且Rdoc被记录为支持几种隐藏部件的方法。RDocstopsprocessingcommentsifitf

ruby - 有没有办法在 Ruby 中执行编译时类型检查?

我知道Ruby是动态和强类型的,但据我所知,由于每个参数缺少显式类型表示法(或契约),当前语法不允许在编译时检查参数类型。如果我想执行编译时类型检查,我有哪些(实际成熟的)选项?更新我的意思是类型检查类似于典型的静态类型语言。比如C。例如,C函数表示每个参数的类型,编译器检查传入的参数是否正确。voidfunc1(structAAAaaa){structBBBbbb;func1(bbb);//Wrongtype.Compiletimeerror.}作为另一个例子,Objective-C通过放置显式类型信息来做到这一点。-(id)method1:(AAA*)aaa{BBB*bbb=[[A